// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "CoreMinimal.h"
#include "GameFramework/PlayerController.h"
#include "../StructAndEnum/StructAndEnum.h"
#include "UObject/NoExportTypes.h"
#include "Engine/EngineBaseTypes.h"
#include "BasePC.generated.h"

/**
 * 
 */
UCLASS()
class SGAME_API ABasePC : public APlayerController
{
	GENERATED_BODY()

public:
	ABasePC();

	//加载到服务器
	UFUNCTION(BlueprintCallable,Reliable,Client,WithValidation,Category="OpenLevel")
		void SGameClientTravel(const FString& URL, enum ETravelType TravelType, bool bSeamless = false);


	//发送聊天信息 Server
	UFUNCTION(BlueprintCallable, Reliable, Server, WithValidation,Category="Chat")
		void SendChatMessageToS(FChatMessage ChatMessage);
	//客户端发送聊天信息 Server
	UFUNCTION(BlueprintCallable, Reliable, Client, WithValidation, Category = "Chat")
		void SendChatMessageCToS(FChatMessage ChatMessage);
	//收到聊天信息
	UFUNCTION(BlueprintCallable, Reliable, Client, WithValidation, Category = "Chat")
		void ReceiveChatMessageToC(FChatMessage ChatMessage);
	
};
